#ifndef __MV_ALGO_HANDLER_H
#define __MV_ALGO_HANDLER_H

#include <memory>
#include <string>

class AlgoHandler {
public:
    static AlgoHandler* getInstance();
public:
    ~AlgoHandler();
    /**
     * @brief read config. init algo and MVMedia
    */
    int init();
    int deInit();
    void startReg();
    void stopReg();
    void releaseMvMedia();
    /**
     * @brief 启动流并运行一次算法
    */
    void request();
private:
    AlgoHandler();
    class AlgoHandlerImpl;
    std::unique_ptr<AlgoHandlerImpl> pImpl;
};

#endif